package com.zjsru.plan2023.oneday;

/**
 * @Author: cookLee
 * @Date: 2023-10-12
 * 找出数组的串联值
 */
public class FindTheArrayConcVal {

    /**
     * 主
     * \
     * 如果 nums 中存在不止一个数字，分别选中 nums 中的第一个元素和最后一个元素，将二者串联得到的值加到 nums 的 串联值 上，然后从 nums 中删除第一个和最后一个元素。
     * 如果仅存在一个元素，则将该元素的值加到 nums 的串联值上，然后删除这个元素。
     * \
     * 输入：nums = [7,52,2,4]
     * 输出：596
     * 解释：在执行任一步操作前，nums 为 [7,52,2,4] ，串联值为 0 。
     *  - 在第一步操作中：
     * 我们选中第一个元素 7 和最后一个元素 4 。
     * 二者的串联是 74 ，将其加到串联值上，所以串联值等于 74 。
     * 接着我们从 nums 中移除这两个元素，所以 nums 变为 [52,2] 。
     *  - 在第二步操作中：
     * 我们选中第一个元素 52 和最后一个元素 2 。
     * 二者的串联是 522 ，将其加到串联值上，所以串联值等于 596 。
     * 接着我们从 nums 中移除这两个元素，所以 nums 变为空。
     * 由于串联值等于 596 ，所以答案就是 596 。
     * \
     * @param args args
     */
    public static void main(String[] args) {
        FindTheArrayConcVal findTheArrayConcVal = new FindTheArrayConcVal();
        int[] nums = new int[]{7,52,2,4};
        System.out.println(findTheArrayConcVal.findTheArrayConcVal(nums));
    }

    public long findTheArrayConcVal(int[] nums) {
        int len = nums.length;
        long ans= 0;
        for (int i = 0, j = len - 1; i <= j; i++, j--) {
            if (i != j) {
                ans += Integer.parseInt(Integer.toString(nums[i]) + Integer.toString(nums[j]));
            } else {
                ans += nums[i];
            }
        }
        return ans;
    }

}
